/// Rust 有两种常量，可以在任意作用域声明，包括全局作用域。它们都需要显式的类型声明：
/// const：不可改变的值（通常使用这种）。
/// static：具有 'static 生命周期的，可以是可变的变量（译注：须使用 static mut 关键字）。
/// 有个特例就是 "string" 字面量。它可以不经改动就被赋给一个 static 变量，
/// 因为它 的类型标记：&'static str 就包含了所要求的生命周期 'static。
/// 其他的引用类型都 必须特地声明，使之拥有'static 生命周期。
/// 这两种引用类型的差异似乎也无关紧要，因 为无论如何，static 变量都得显式地声明。

//
static LANGUAGE: &str = "Rust";
const THRESHOLD: i32 = 10;

fn is_big(n: i32) -> bool {
    n > THRESHOLD
}
pub fn test() {
    let n = 16;
    println!("{}", LANGUAGE);
    println!("{}", THRESHOLD);
    println!("{}", if is_big(n) { "big" } else { "small" });
}
